package com.webserver.controller;


import com.webserver.http.HttpServletRequest;
import com.webserver.http.HttpServletResponse;
import com.webserver.vo.User;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

/*
* 处理与用户相关的请求操作
* */
public class UserController {
//该File对象表示用于所有用户信息保存的目录
    private static File userDir;
    static {
        userDir=new File("./users");
        if(!userDir.exists()){
            userDir.mkdirs();
        }
    }

    /*
    * 处理用户注册操作的请求
    * */
    public void reg(HttpServletRequest request, HttpServletResponse response){
//        调用getParameter
        System.out.println("开始处理注册......");
//        1.获取用户在注册页面上表单中提交上来的注册信息
//        调用getParameter用于获取浏览器传递过来的参数
//        参数与表单中输入框的名字一致
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String nickname = request.getParameter("nickname");
        String ageStr = request.getParameter("age");
        System.out.println(username+","+password+","+nickname+","+ageStr);
//        2.将该用户信息保存
        int age =Integer.parseInt(ageStr);
        User user =new User(username,password,nickname,age);
        try (
            ObjectOutputStream oos=new ObjectOutputStream(
                    new FileOutputStream(new File(userDir,username+".obj"))
            );
        ){
            oos.writeObject(user);
            System.out.println("写出完毕!");
        }catch (IOException e){
            e.printStackTrace();
        }
//        3.设置响应对象给用户回馈注册结果
        System.out.println("注册处理完毕......");
    }

    public void reg() {

    }
}
